Tripwire: A Synchronisation Primitive for Virtual Memory Mapped Communication
نویسندگان
چکیده
Existing user-level network interfaces deliver high bandwidth, low latency performance to applications, but are typically unable to support diverse styles of communication and are unsuitable for use in multiprogrammed environments. Often this is because the network abstraction is presented at too high a level, and support for synchronisation is inflexible. In this paper we present a new primitive for in-band synchronisation: the Tripwire. Tripwires provide a flexible, efficient and scalable means for synchronisation that is orthogonal to data transfer. We describe the implementation of a non-coherent distributed shared memory network interface, with Tripwires for synchronisation. This interface provides a low-level communications model with gigabit class bandwidth and very low overhead and latency. We show how it supports a variety of communication styles, including remote procedure call, message passing and streaming.
منابع مشابه
Distributed Computing with the CLAN Network
CLAN (Collapsed LAN) is a high performance user-level network targeted at the server room. It presents a simple low-level interface to applications: connection-oriented non-coherent shared memory for data transfer, and Tripwire, a user-level programmable CAM for synchronisation. This simple interface is implemented using only hardware state machines on the NIC, yet is flexible enough to support...
متن کاملHigher Levels of Process Synchronisation
Four new synchronisation primitives (SEMAPHOREs, RESOURCEs, EVENTs and BUCKETs) were introduced in the KRoC 0.8beta release of occam for SPARC (SunOS/Solaris) and Alpha (OSF/1) UNIX workstations [1][2][3]. This paper reports on the rationale, application and implementation of two of these (SEMAPHOREs and EVENTs). Details on the other two may be found on the web [4]. The new primitives are desig...
متن کاملFine Grain Synchronisation in VSM Architectures
This paper presents a new scheme to replace course grain barriers with ne grain synchronisation in virtual shared memory systems. Traditionally, shared memory programming models separate data access from synchronisation. In our scheme synchronisation between both writes and their subsequent reads, and reads and their following writes, is achieved through the coherence tags associated with each ...
متن کاملEvaluating The Performance of Non-Blocking Synchronisation on Shared-Memory Multiprocessors
Parallel programs running on shared memory multiproces sors coordinate via shared data objects structures To en sure the consistency of the shared data structures programs typically rely on some forms of software synchronisations Unfortunately typical software synchronisation mechanisms usually result in poor performance because they produce large amounts of memory and interconnection network c...
متن کاملDesign and Implementation of NX Message Passing Using Shrimp Virtual Memory Mapped Communication
This paper describes the design, implementation and performance of the NX message-passing interface on the Shrimp multicomputer. Our implementation exploits Shrimp's virtual memory-mapped communication facility. Unlike traditional methods, our implementation performs buuer management at user level without using a special message-passing processor, and requires no CPU intervention upon message a...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Journal of Interconnection Networks
دوره 2 شماره
صفحات -
تاریخ انتشار 2001